Note: This tutorial assumes that you have completed the previous tutorials: ROS Tutorials.
(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Arduino IDE Setup

Description: This tutorial shows step-by-step how to setup up the Arduino IDE to use rosserial.

Tutorial Level: BEGINNER

Next Tutorial: ja/rosserial_arduino/jaTutorials/Hello World

イントロダクション

Arduino と Arduino IDEははやく簡単にハードウェアのプログラムを書くのにすばらしいツールです。rosserial_arduinoを使えば、Arduino IDEでROSを直接使うことができます。rosserialは、ArduinoのUARTでも動くROSの通信プロトコルを提供します。それは、Arudinoを直接ROSのメッセージをパブリッシュしたりサブスクライブしたり、TFトランスフォームをパブリッシュしたりROSのシステム時間を取得したりすることのできる一人前のROSのnodeにします。

注意:もしまだArduino IDEのインストールをしていないなら、from the Arduino websiteからダウンロードしてください。アプリケーションのパスにあるフォルダーかデスクトップ、ホームフォルダにアプリケーションをインストールするのが勧められます。一旦インストールしたら、スケッチブックの位置を選ぶために、アプリケーションを立ち上げてください。(arduino official websiteをご覧ください。スケッチブックはあなたのプログラムやスケッチを保存する基本的なばしょになります。).終わったらIDEを閉じてください。

ROSのバインディングはArduinoのライブラリとして実行されます。すべてのArduinoのライブラリのように、ros_libはそのライブラリをスケッチブックのなかのライブラリフォルダに移動すると働きます。スケッチブックにまだライブラリのフォルダがない場合は、新たに作ってください。そしたらdebs(sudo apt-get install ros-electric-rosserial)からでもソースからでもライブラリをインストールできます。

rosserialのライブラリをコードの中で使うために、初めに以下を書かなくてはなりません。

#include <ros.h>

上はすべてのファイルに優先されて書きます。つまり

#include <std_msgs/String.h>

などです。さもないと、Arduino IDEはそれらをおくことができません。

ソースから加える

ソースからインストールしたいなら、いくらかの余分なステップを踏む必要になります。

hg clone https://kforge.ros.org/rosserial/hg rosserial
rosdep install rosserial_arduino
rosmake rosserial_arduino

これらのコマンドは、mercurialをつかってrosserialレポジトリをクローンし、依存ファイルやパッケージをインストール、通信に必要なrosserial_msgsを生成し、ros_libライブラリを含むライブラリフォルダを作っています。

終わりに

これで、ソースからかdebsからかインストールが終わったので、あと唯一やらなくてはならないことはrosserial_arduino/librariesのディレクトリをArduinoのスケッチブックにコピーすることです。

roscd rosserial_arduino/libraries
cp -r ros_lib <sketchbook>/libraries/ros_lib

IDEを再起動した後に、ros_libが例の中にリストされているのが見れます。

arduino_ide_examples_screenshot.png

Wiki: ja/rosserial_arduino/jaTutorials/Arduino IDE Setup (last edited 2012-12-22 20:39:24 by Yuto Inagaki)